package czy.demo.config;


import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Configuration;

/**
 * 配置服务器，要继承最终的TomcatReactiveWebServerFactory
 * 可以覆盖它的其中一个方法
 */
@Configuration
public class SpringServerConfig{

    private static final Logger logger = LoggerFactory.getLogger(SpringServerConfig.class);


    /**
     * 配置WebServerFactory，框架会配置TomcatWebServerFactoryCustomizer这个定制化器
     * 而在WebServerFactoryCustomizerBeanPostProcessor中会对每一个WebServerFactory类型的Bean
     * 调用每一个WebServerFactoryCustomizer类型Bean的customize方法
     * 但是还是不太清楚具体顺序，还有覆盖机制
     * 目前效果是我配置了TomcatServletWebServerFactory，系统就不会配置
     * 如果我不配置，系统就会配置一个
     * 而且不管如何这一步都获取不到配置的系统属性，如ssl为null

    @Bean
    public TomcatServletWebServerFactory servletWebServer(){
        TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory(9000);
        factory.addConnectorCustomizers(connector -> {
            logger.info("当前连接器名称为："+connector.getExecutorName());
        });
        return factory;
    }
     */


}
